package com.zimo.download;

import com.zimo.download.info.PointerOffset;

import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.URL;

/**
 * 下载接口，只有实现了此接口的类才是下载类，才能被DownloadR软件进行识别和应用
 */
public interface Download {

    /**
     * 开始下载
     * @param pointerOffset     指针偏移量
     * @throws IOException
     */
    public boolean startDownload(URL url, String filePath,PointerOffset pointerOffset)throws IOException;

    /**
     * 停止下载，通过文件名来停止当前线程
     * @param name    文件名
     */
    public boolean stopDownload(String name);

    /**
     * 返回这个下载器已经完成的线程任务数
     * @return
     */
    public int getFinishThread();

    /**
     * 获取已经下载的文件大小
     * @return
     */
    public long getDownloadingFileSize();

}
